package utilidades;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;

/**
 *
 * @author jason
 */

public class Lector {

    boolean primeraPosicion = true;
    ArrayList<String> lista;

    public Lector() {

        this.lista = new ArrayList<>();

    }

    
    /**
     * 
     * @param archivo a leer con la lista de alumnos en formato CSV
     * @return devuelve una ArrayList con la lista de alumnos, en la posicion 0
     * de la misma siempre va el nombre del curso
     */
    
    public ArrayList leerCSV(File archivo) {

        try {        
            BufferedReader bufferReader = new BufferedReader( new java.io.InputStreamReader( new java.io.FileInputStream( archivo ), StandardCharsets.ISO_8859_1 ) );
            String linea = "";
            String lineaAux = "";
            while ((linea = bufferReader.readLine()) != null) {
                if (primeraPosicion) {
                    primeraPosicion = false;
                    String nombreFichero = archivo.getName();
                    int posicionPunto = nombreFichero.indexOf('.');
                    String curso = nombreFichero.substring(0, posicionPunto);
                    lista.add(curso);
                    continue;

                }

                int posicionComilla = linea.indexOf('"') + 1;
                lineaAux = linea.substring(posicionComilla);
                linea = lineaAux.substring(0, lineaAux.length() - 1);
                lista.add(linea);
            }

        } catch (FileNotFoundException ex) {
            System.out.println("Archivo no encontrado");
        } catch (IOException ex) {
            System.out.println("Error de entrada / salida");
        }

        return lista;

    }
}
